vGPU unter Nutanix AHV

Mit dem AOS Release 5.5 legt Nutanix bezüglich der Use Cases für virtuelle Desktops auf dem hauseigenen Hypervisor AHV nach.

Damit können nun Anforderungen an unternehmensweite virtuelle Arbeitsplätze mit Grafikbeschleuniger Karten auch mit dem kostenfreien AHV Hypervisor bereitgestellt werden. Diese gehen mittlerweile weit über die bekannten Beispiele von CAD und CAM Anwendungsfällen hinaus. Es werden mehr und mehr GPU-beschleunigte Workloads verwendet, da die Hardwarebeschleunigung auch für diverse Standardapplikationen wie Browser und Office 2016 Verbesserungen bietet. Die Unterstützung der NVIDIA vGPU Software umfasst dabei GRID Virtual PC (GRID vPC), GRID Virtual Applications (GRID vApps) und Quadro Virtual Data Center Workstation (Quadro vDWS). Nutanix AHV ist dadurch der erste kommerzielle auf KVM basierende Hypervisor, der virtuelle Grafikkarten unterstützt. Somit dringt die Grafikbeschleunigung in neue Bereiche der Cloud und Datacenter VDI Umgebung vor und Nutanix bietet eine starke, flexible und verlässliche Plattform für das volle Spektrum an Desktop Virtualisierungsanforderungen.

GPU Pass-through und vGPU support

Bisher war es unter Nutanix AHV bereits möglich die Grafikbeschleuniger Karten von NVIDIA direkt als eine einzige Grafikkarte an eine VM durchzureichen (GPU pass-through).

vGPU-AHV-architecture

NVIDIA GRID Architektur

Für bessere Skalierung können die Karten ab sofort (AOS 5.5) auch partitioniert und auf mehrere VMs als virtuelle Grafikkarte (vGPU) aufteilen werden (NVIDIA GRID Architektur). Nach bestimmten von NVIDIA vorbereiteten Profilen (s.u.) kann der RAM der physikalischen GPU abgetrennt und der jeweiligen VM als vGPU zugewiesen werden. Die Rechenlast wird jeweils auf Zeitbasis auf die einzelnen Kerne der GPU verteilt, ähnlich eines CPU Scheduling. Die vGPU kann den VMs über Prism als virtuelle Hardware angehängt werden, was im folgenden Video unseres Kollegen Kees Baggerman (Blog, Twitter) gezeigt wird:

In Prism ist auch das Monitoring der Grafikkarten direkt integriert. Damit lässt sich die Hostebene, sowie die Gastebene überwachen (siehe Galerie).

Der in der VM benötigte Treiber ist im NVIDIA Support Portal erhältlich. Hierbei muss darauf geachtet werden, dass mindestens der GRID Treiber in Version 5.1 (Virtual GPU Software R384) verwendet wird. Unter folgendem Link finden Sie alle Infos zu unterstützten NVIDIA Grafikkarten, Gastbetriebssystemen und Software Versionen: http://docs.nvidia.com/grid/5.0/grid-vgpu-release-notes-nutanix-ahv/index.html

Die zurzeit unterstützten Grafikkarten Tesla M10 und M60 unterscheiden sich dabei im Anwendungszweck. Während die Tesla M10 Karte auf eine möglichst hohe gleichzeitige Benutzeranzahl abzielt, sind die Tesla M60 Karten für besonders rechenintensive high-end Grafikanwendungen gedacht. Die M10 Karte hat 4 entry-level Maxwell GPUs mit jeweils 8GB RAM (32GB insgesamt). Die M60 verfügt über zwei high-end Maxwell GPUs mit ebenfalls jeweils 8GB RAM (16GB insgesamt) und stellt dafür deutlich mehr CUDA Kerne zur Verfügung (4096 anstatt 2560). Die unterschiedlichen Einsatzzwecke lassen sich auch an den jeweils möglichen Profilen ablesen:

NVIDIA Grid Graphics Board Virtual GPU Profile Graphics Memory Max Displays Per User Max Resolution Per Display Max Users Per Graphics Board High End Designer

Grid M10

M10-8Q 8,192 MB 4 3840×2160 (4k) 4 High End Designer
M10-4Q 4,096 MB 4 3840×2160 (4k) 8 Designer
M10-2Q 2,048 MB 4 2560×1600 16 Designer
M10-1Q 1,024 MB 2 2560×1600 32 Designer
M10-0Q 512 MB 2 2560×1600 64 Power User/Designer
M10-2B 2,048 MB 2 2560×1600 16 Power User
M10-1B 1,024 MB 2 2560×1600 32 Power User
M10-0B 512 MB 2 2560×1600 64 Power User
Grid M60 M60-8Q 8,192 MB 4 3840×2160 (4k) 2 High End Designer
M60-4Q 4,096 MB 4 3840×2160 (4k) 4 Designer
M60-2Q 2,048 MB 4 2560×1600 8 Designer
M60-1Q 1,024 MB 2 2560×1600 16 Designer
M60-0Q 512 MB 2 2560×1600 32 Power User/Designer
M60-2B 2,048 MB 2 2560×1600 8 Power User
M60-1B 1,024 MB 2 2560×1600 16 Power User
M60-0B 512 MB 2 2560×1600 32 Power User
Table: vGPU Profiles: https://portal.nutanix.com/#/page/solutions/details?targetId=SN-2046_vGPU_on_Nutanix:top_nvidia_grid_gpu.html

Über die Profile können verschiedene Anforderungen abgebildet werden. Hierbei muss man den richtigen Kompromiss zwischen höherer Performance und höherer Anzahl der User finden.

Die vGPU Profile können pro Karte gemixt werden, aber nicht pro GPU Kern. Administratoren können „Depth“ oder „Breadth“ Modus verwenden, um das System zu auszubalancieren. „Depth“ maximiert die Anzahl der Benutzer pro Karte, während „Breadth“ ein round-robin Verfahren verwendet. „Depth“ verwendet die Karte dabei effizienter, kann aber zu Engpässen der einzelnen Ressourcen führen. Bei „Breadth“ verhält es sich genau andersherum. Nutanix AHV mit NVIDIA Grafikkarten unterstützt OpenGL, WebGL und DirectX.

In folgenden aktuellen Modellen der Nutanix eigenen NX-Hardware können Grafikkartenoptionen verbaut werden:

Node Type Expansion Slots Options
NX-3175-G4 1x PCIe 1x M10

1x M60

NX-3155-G4 3x PCIe 2x M10
NX-3175-G5 1x PCIe 1x M10

1x M60

NX-3155-G5 3x PCIe 2x M10

2x M60

Table: Nutanix GPU Options: https://portal.nutanix.com/#/page/solutions/details?targetId=SN-2046_vGPU_on_Nutanix:top_nvidia_grid_gpu.html

Quellen / weitere Infos: